Systems and methods for collecting information from vehicle devices via a vehicle data bus

ABSTRACT

Systems and methods in accordance with embodiments of the invention continuously collect information from vehicle devices via a vehicle data bus, store information in a database, and retrieve information from the database in response to requests from remote devices. One embodiment includes a vehicle position determining device, a wireless communications device, and a controller apart from at least one operable vehicle device, connected to the vehicle data bus so that the vehicle data bus extends from said controller to at least one operable vehicle device. Additionally, the controller is configured to query at least one vehicle device via the vehicle data bus and store information provided by at least one vehicle device in a database, receive requests for information from a remote device via the wireless communications device, query the database for the requested information, and send the requested information to the remote device via the wireless communications device.

CROSS-REFERENCE TO RELATED APPLICATIONS

The current application claims priority to U.S. Provisional PatentApplication No. 61/425,702, filed Dec. 21, 2010, the disclosure of whichis incorporated herein by reference in its entirety.

FIELD OF THE INVENTION

The present invention relates generally to vehicle telematics systemsand more specifically to the collection of data from devices connectedto a vehicle bus using a vehicle telematics system and the transmissionof collected data to remote devices using the vehicle telematics system.

BACKGROUND

A vehicle telematics system is typically a system installed in a vehiclethat is capable of determining the location of the vehicle andcommunicating the vehicle's location to a remote location via a wirelesscommunication link. Vehicle telematics systems are installed in avariety of applications including, but not limited to, fleet management,vehicle finance, vehicle maintenance, driver management, and/or fuelmanagement.

A variety of vehicle telematics systems that are configured to connectwith the vehicle bus of a vehicle are described in a series of relatedpatents and patent applications, on which Kenneth E. Flick is named asan inventor. The “Background of the Invention” section of U.S. Pat. No.5,719,551 to Flick entitled “Vehicle Security System for a VehicleHaving a Data Communications Bus” filed Aug. 22, 1996, acknowledges thatvehicle data buses were well known at the time of the filing of thepatent and asserts that conventional vehicle security systems were notreadily adaptable to a vehicle including a data communication bus. U.S.Pat. No. 5,719,551 illustrates a variety of techniques for connecting avehicle security system to a vehicle data bus and discloses a method forremotely controlling a vehicle function for a vehicle of a typeincluding a data communications bus connecting a plurality of vehicledevices, the method involving receiving a signal at the vehicle from aremote transmitter so that the vehicle function controller remotelycontrols a vehicle function responsive to the remote transmitter (seecol. 8, lines 51-65).

The “Background of the Invention” section of U.S. Pat. No. 6,512,465 toFlick entitled “Vehicle Tracker Including Stationary Time Determinationand Associated Methods” filed May 17, 2001, which claims priority to anumber of provisional applications filed on or after May 17, 2000,acknowledges that systems existed at that time to enable the tracking ofvehicles via the Internet. U.S. Pat. No. 6,512,465 discloses a vehicletracking system. In addition, U.S. Pat. No. 6,512,465 discloses that thetracking device may communicate with one or more other vehicle devicesvia a vehicle data communications bus using the techniques described inU.S. Pat. No. 5,719,551 and U.S. Pat. No. 6,011,460, which is acontinuation of U.S. Pat. No. 5,719,551.

U.S. Pat. No. 6,924,750 entitled “Vehicle Tracking Unit for ControllingOperable Vehicle Devices Using a Vehicle Data Bus” filed Mar. 25, 2002,which is a continuation-in-part of U.S. Pat. No. 6,512,465, includes asignificant amount of additional disclosure relative to U.S. Pat. No.6,512,465 concerning the connection of a vehicle tracking system inwhich a vehicle tracking unit interfaces with a vehicle data bus. Someof the disclosure that was added to U.S. Pat. No. 6,924,750 is asfollows (col. 37, lines 1-49):

-   -   In an alternate embodiment of the invention illustratively shown        in FIG. 36, the vehicle 21 may include a vehicle data bus 360        extending throughout the vehicle and which is connected to one        or more operable vehicle devices. As illustratively shown, such        operable vehicle devices may include the vehicle alarm indicator        67 (e.g., horn, siren, etc.), a keyless entry device, the engine        starter interrupt device 66, the remote start device 63, the        door lock actuator 62, and the vehicle security controller 28,        although others may also be included as will be appreciated by        those of skill in the art. Furthermore, other devices to be        monitored, such as the ignition switch 65, may also be        connected, to the vehicle data bus 360, for example.    -   Furthermore, one or more of the operable vehicle devices may be        responsive to at least one data bus code received on the vehicle        data bus 360. More particularly, each of the above listed        operable vehicle devices may have one or more unique data bus        codes assigned thereto which, when received, cause a respective        operable vehicle device to perform a particular function, as        will be understood by those skilled in the art.    -   As such, a method according to the present invention is        illustratively shown in FIG. 37 in which, beginning at Block        370, the controller 40 generates at least one data bus code on        the vehicle data bus 360 to control at least one operable        vehicle device based upon a command signal received by the        wireless communications device 44, at Blocks 371 and 372.        Accordingly, the user may not only use the vehicle tracking unit        25 to control numerous vehicle devices, but separate connections        between such devices and the controller 40 need not be made.        Instead, each of the operable vehicle devices may conveniently        be connected to the vehicle data bus 360, which may make the        installation thereof easier.    -   In some embodiments, the command signal received by the wireless        communications device 44 may include the at least one data bus        code. Alternately, the command signal may relate to the at least        one data bus code, and the controller 40 may process the command        signal to generate the at least one data bus code on the vehicle        data bus 360, as will be understood by those skilled in the art.    -   Further, the command signal may be provided by the monitoring        station 30, and the controller 40 may optionally cooperate with        the wireless communications device 44 to send a response message        to the monitoring station based upon receiving the command        signal, at Block 373, thus ending the method (Block 374). By way        of example, the wireless communications device 44 may receive        the vehicle data bus device code via a wireless pager network,        although other suitable communications formats may also be used.

FIG. 1 illustrates the vehicle tracking unit illustrated in FIG. 36 ofU.S. Pat. No. 6,924,750. FIG. 2 illustrates the method shown in FIG. 37of U.S. Pat. No. 6,924,750. Neither FIGS. 36 nor 37 appeared in U.S.Pat. No. 6,512,495.

The disclosures of each of U.S. Pat. Nos. 5,719,551, 6,011,460,6,512,465, and 6,924,750 are incorporated by reference herein in theirentirety.

SUMMARY OF THE INVENTION

Systems and methods in accordance with embodiments of the inventioncontinuously collecting information from vehicle devices via a vehicledata bus, store the information in a database, and retrieve theinformation from the database in response to requests from remotedevices. One embodiment includes a vehicle position determining device,a wireless communications device, and a controller spaced apart from theat least one operable vehicle device and connected to the vehicle databus so that the vehicle data bus extends from said controller to the atleast one operable vehicle device. In addition, the controller isconfigured to query the at least one vehicle device via the vehicle databus and store the information provided by the at least one vehicledevice in a database, and receive requests for information from a remotedevice via the wireless communications device, query the database forthe requested information and send the requested information to theremote device via the wireless communications device.

A further embodiment of the invention also includes memory. In addition,the controller is configured to store the database in the memory.

In another embodiment of the invention, the information provided by theat least one vehicle device includes at least one piece of informationselected from a group including: Vehicle Speed; Engine Speed; Fuel Rate;Trip Fuel Consumption; Trip Odometer; Ignition Status; MalfunctionIndicator Lamp Status; Diagnostic Trouble Codes; Power Take Off Status;Engine Coolant Monitor; Throttle Position; Battery Voltage; A/C SystemMonitor; Catalyst Monitor; Comprehensive Component Monitor; EGR SystemMonitor; Evaporative System Monitor; Fuel System Monitor; HeatedCatalyst Monitor; Misfire Monitor; Oxygen Sensor Monitor; Oxygen SensorHeater Monitor; Secondary Air Monitor; Fuel Rate; Trip Fuel Consumption;Battery Voltage; Brake Position/Switch Status; Odometer; SeatbeltFastened; Cruise Control Status; Fuel Level; Transmission Gear; TurnSignal Status; Accelerator Position; Tire Pressure; Oil Life; AirbagStatus; Acceleration/Deceleration; and Vehicle Security Alarm Status.

In a still further embodiment of the invention, the controller isconfigured to periodically query the at least one vehicle device.

In still another embodiment of the invention, the controller isconfigured to determine the at least one vehicle device to query basedupon a piece of information previously received by the controller.

In a yet further embodiment of the invention, the request forinformation from the remote device is a request for a specific piece ofinformation.

In yet another embodiment of the invention, the request for informationfrom the remote device is a request for multiple pieces of information.

In a further embodiment again of the invention, the request forinformation from the remote device is a request for a piece ofinformation that is calculated by the controller using informationretrieved from the database.

In another embodiment again of the invention, the controller isconfigured to determine location using the vehicle position determiningdevice and to provide location information to a remote device via thewireless communications device.

A further additional embodiment of the invention includes a wirelesscommunications device, and a controller configured to connect to thevehicle data bus. In addition, the controller is configured to query theat least one vehicle device via the vehicle data bus and store theinformation provided by the at least one vehicle device in a database,and receive requests for information from a remote device via thewireless communications device, query the database for the requestedinformation and send the requested information to the remote device viathe wireless communications device.

A still yet further embodiment of the invention includes querying the atleast one vehicle device using a vehicle tracking device, addinginformation received from the at least one vehicle device in response tothe query to a database maintained by the vehicle tracking device,receiving a request for information from a remote device via the vehicletracking device, querying the database using the vehicle tracking deviceto obtain the requested information, and sending the requestedinformation to the remote device using the vehicle tracking device.

In still yet another embodiment of the invention, the informationreceived from the at least one vehicle device includes at least onepiece of information selected from a group including: Vehicle Speed;Engine Speed; Fuel Rate; Trip Fuel Consumption; Trip Odometer; IgnitionStatus; Malfunction Indicator Lamp Status; Diagnostic Trouble Codes;Power Take Off Status; Engine Coolant Monitor; Throttle Position;Battery Voltage; A/C System Monitor; Catalyst Monitor; ComprehensiveComponent Monitor; EGR System Monitor; Evaporative System Monitor; FuelSystem Monitor; Heated Catalyst Monitor; Misfire Monitor; Oxygen SensorMonitor; Oxygen Sensor Heater Monitor; Secondary Air Monitor; Fuel Rate;Trip Fuel Consumption; Battery Voltage; Brake Position/Switch Status;Odometer; Seatbelt Fastened; Cruise Control Status; Fuel Level;Transmission Gear; Turn Signal Status; Accelerator Position; TirePressure; Oil Life; Airbag Status; Acceleration/Deceleration; andVehicle Security Alarm Status.

In a still further embodiment again of the invention, querying the atleast one vehicle device using a vehicle tracking device includesperiodically querying the at least one vehicle device using the vehicletracking device.

In still another embodiment again of the invention, querying the atleast one vehicle device using the vehicle tracking device includesdetermining at least one vehicle device to query based upon a piece ofinformation previously received by the controller.

In a still further additional embodiment of the invention, the requestfor information from the remote device is a request for a specific pieceof information.

In still another additional embodiment of the invention, the request forinformation from the remote device is a request for multiple pieces ofinformation.

In a yet further additional embodiment of the invention, the request forinformation from the remote device is a request for a piece ofinformation that is generated by analyzing information retrieved fromthe database using the vehicle tracking device.

Yet another additional embodiment of the invention also includesdetermining location using the vehicle tracking device, and providinglocation information to a remote device via the vehicle tracking device.

Another further embodiment of the invention includes a machine readablemedium containing controller instructions, where execution of theinstructions by a controller causes the controller to perform a processincluding querying the at least one vehicle device, adding informationreceived from the at least one vehicle device in response to the queryto a database, receiving a request for information from a remote devicevia a wireless communications device, querying the database to obtainthe requested information, and sending the requested information to theremote device via a wireless communications device.

In another further embodiment again, the machine readable medium isnon-volatile memory.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates a schematic block diagram of a vehicle including aprior art vehicle tracking unit connected to a vehicle data bus.

FIG. 2 is a flow chart illustrating a prior art process for controllingoperable vehicle devices using the vehicle tracking unit and vehicledata bus shown in FIG. 1.

FIG. 3 is a flow chart illustrating a process for collecting data fromvehicle devices and storing the data in accordance with an embodiment ofthe invention.

FIG. 4 is a flow chart illustrating a process for retrieving data from alocal database of information collected from vehicle devices stored on avehicle tracking unit in response to a request for information receivedfrom a remote device in accordance with an embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Turning now to the drawings, systems and methods for continuouslycollecting information from vehicle devices via a vehicle data bus,storing the information in a database, and retrieving the informationfrom the database in response to requests from remote devices inaccordance with embodiments of the invention are illustrated. A numberof prior art systems involve the connection of a vehicle tracking unitto a vehicle data bus so that the vehicle tracking unit can place atleast one data bus code on the vehicle data bus to control at least oneoperable vehicle device based upon a command signal received via awireless communication link. Vehicle tracking units in accordance withembodiments of the invention are configured to connect to the vehicledata bus, but do not place data bus codes on the vehicle data bus inresponse to command signals received via a wireless communication link.Instead, the vehicle tracking units place codes on the vehicle data busindependently of commands received via the wireless communication link.In many embodiments, a vehicle tracking unit continuously collects datafrom various vehicle devices connected to a vehicle data bus and recordsthe collected data in a local database or an equivalent data structurethat facilitates the retrieval of information. In several embodiments,the local database is stored in the memory of the vehicle tracking unit.When the vehicle tracking unit receives a command from a remote devicevia the wireless communication link, the vehicle tracking unitdetermines the information requested by the remote device and queriesthe local database to provide an answer to the remote device via thewireless communication link. In this way, the vehicle tracking units'collection of information from vehicle devices and response to commandsreceived via the wireless communication link are independent. Inaddition, the vehicle tracking unit can gather location informationusing a vehicle position determining device and provide locationinformation to remote devices via a wireless communications device.Various embodiments of vehicle tracking units in accordance withembodiments of the invention are discussed further below.

Vehicle Tracking Units

Any of a variety of vehicle tracking units can be utilized in accordancewith embodiments of the invention including the prior art vehicletracking unit illustrated in FIG. 1. The vehicle tracking unitillustrated in FIG. 1 includes a controller 40 including memory 52,input/output circuitry 53 configured to connect the vehicle trackingunit to a vehicle data bus 360, a position determining device 42 such asa GPS receiver, and a wireless communications device 44. The vehicletracking unit is configured to communicate with vehicle devices via thevehicle data bus 360, and with remote devices via a wirelesscommunication link using the wireless communications device. The vehicletracking unit can determine its location using the position determiningdevice 42 and can report its location to a remote device via thewireless communication device 44. In many embodiments, a response to arequest for information from a remote device includes a location reportfrom the vehicle tracking unit. Although a specific vehicle trackingunit is illustrated in FIG. 1, any of a number of different vehicletracking units appropriate to specific applications can be utilized inaccordance with embodiments of the invention.

Collection of Information from Vehicle Devices

A variety of vehicle devices communicate via the vehicle data bus inmodern vehicles. A vehicle tracking unit in accordance with embodimentsof the invention can query the vehicle devices using commandscommunicated to the vehicle devices via the vehicle data bus.Information that can be collected includes but is not limited to thevehicle identification or VIN number, information from an enginemanagement system, information from an emission control system includingbut not limited to: Vehicle Speed; Engine Speed; Fuel Rate; Trip FuelConsumption; Trip Odometer; Ignition Status; Malfunction Indicator LampStatus; Diagnostic Trouble Codes; Power Take Off Status; Engine CoolantMonitor; Throttle Position; Battery Voltage; A/C System Monitor;Catalyst Monitor; Comprehensive Component Monitor; EGR System Monitor;Evaporative System Monitor; Fuel System Monitor; Heated CatalystMonitor; Misfire Monitor; Oxygen Sensor Monitor; Oxygen Sensor HeaterMonitor; Secondary Air Monitor; Fuel Rate; Trip Fuel Consumption;Battery Voltage; Brake Position/Switch Status; Odometer; SeatbeltFastened; Cruise Control Status; Fuel Level; Transmission Gear; TurnSignal Status; Accelerator Position; Tire Pressure; Oil Life; AirbagStatus; Acceleration/Deceleration; and Vehicle Security Alarm Status.

The vehicle tracking unit can store the information provided by thevehicle devices for retrieval. In many embodiments, the vehicle trackingunit stores the information in a local database. The local database canbe stored in the memory of the controller or in another storage device.In a number of embodiments, the vehicle tracking unit collectsinformation from vehicle devices by querying specific vehicle devices inaccordance with a predetermined schedule. In several embodiments, thevehicle tracking unit determines the information to collect in real timebased upon the information that has already been collected by thevehicle tracking unit.

A process for obtaining vehicle data via a vehicle data bus and addingit to a local database stored on a vehicle tracking unit in accordancewith an embodiment of the invention is illustrated in FIG. 3. Theprocess 100 involves determining (102) a specified piece of informationto be retrieved from a vehicle device for inclusion in the database,providing (104) at least one command to the vehicle device via thevehicle data bus to request the specified piece of information,receiving (106) the specified piece of information from the vehicledevice via the vehicle data bus, and adding (108) the specified piece ofinformation to the database. In many embodiments, the process alsoinvolves determining (107) a time to associate with the data provided bythe vehicle device according to a reference clock and associating a timestamp with the specified information in the database. Although aspecific process is shown in FIG. 3, any of a variety of processes forobtaining specific pieces of information from vehicle devices via a databus and storing the specified pieces of information within a localdatabase stored on a vehicle tracking unit appropriate to specificapplications can be utilized in accordance with embodiments of theinvention.

Responding to Requests for Information

Vehicle tracking units in accordance with embodiments of the inventionstore information retrieved from vehicle devices in a local database.When a request for information is received via a wireless communicationlink from a remote device, the vehicle tracking unit can query thedatabase to provide the requested information. In this way, the vehicletracking unit is able to immediately retrieve the requested information(if available), and/or utilize historical information in responding tothe remote device.

A process for responding to requests for information received fromremote devices via a wireless communication link in accordance withembodiments of the invention is illustrated in FIG. 4. The process 200includes receiving (202) a request from a remote device. The vehicletracking unit determines (204) the information (if any) requested by theremote device and, where appropriate, queries (206) the database ofvehicle device information to retrieve information that can be utilizedin generating a response to the remote device. As noted above, theretrieved information can be a specific piece of information or multiplepieces of information. In addition, the retrieved information can bedirectly provided to the remote device and/or analyzed to generateinformation that is provided to the remote device. Once vehicle deviceinformation has been retrieved from the database, the vehicle trackingunit generates (208) a response message and transmits (210) the responseto the remote device via the wireless link. Although a specific processfor responding to requests and/or commands from remote devices isillustrated in FIG. 4, any of a variety of processes appropriate tospecific applications can be utilized in accordance with embodiments ofthe invention.

While the above description contains many specific embodiments of theinvention, these should not be construed as limitations on the scope ofthe invention, but rather as an example of one embodiment thereof.Accordingly, the scope of the invention should be determined not by theembodiments illustrated, but by the appended claims and theirequivalents.

1. A vehicle tracking unit for a vehicle of a type comprising a vehicledata bus extending throughout the vehicle and at least one operablevehicle device connected thereto, the at least one operable vehicledevice responsive to at least one data bus code on the vehicle data bus,the vehicle tracking unit comprising: a vehicle position determiningdevice; a wireless communications device; and a controller spaced apartfrom the at least one operable vehicle device and connected to thevehicle data bus so that the vehicle data bus extends from saidcontroller to the at least one operable vehicle device; wherein thecontroller is configured to: query the at least one vehicle device viathe vehicle data bus and store the information provided by the at leastone vehicle device in a database; and receive requests for informationfrom a remote device via the wireless communications device, query thedatabase for the requested information and send the requestedinformation to the remote device via the wireless communications device.2. The vehicle tracking unit of claim 1, further comprising: memory;wherein the controller is configured to store the database in thememory.
 3. The vehicle tracking unit of claim 1, wherein the informationprovided by the at least one vehicle device includes at least one pieceof information selected from the group consisting of: Vehicle Speed;Engine Speed; Fuel Rate; Trip Fuel Consumption; Trip Odometer; IgnitionStatus; Malfunction Indicator Lamp Status; Diagnostic Trouble Codes;Power Take Off Status; Engine Coolant Monitor; Throttle Position;Battery Voltage; A/C System Monitor; Catalyst Monitor; ComprehensiveComponent Monitor; EGR System Monitor; Evaporative System Monitor; FuelSystem Monitor; Heated Catalyst Monitor; Misfire Monitor; Oxygen SensorMonitor; Oxygen Sensor Heater Monitor; Secondary Air Monitor; Fuel Rate;Trip Fuel Consumption; Battery Voltage; Brake Position/Switch Status;Odometer; Seatbelt Fastened; Cruise Control Status; Fuel Level;Transmission Gear; Turn Signal Status; Accelerator Position; TirePressure; Oil Life; Airbag Status; Acceleration/Deceleration; andVehicle Security Alarm Status.
 4. The vehicle tracking unit of claim 1,wherein the controller is configured to periodically query the at leastone vehicle device.
 5. The vehicle tracking unit of claim 1, wherein thecontroller is configured to determine the at least one vehicle device toquery based upon a piece of information previously received by thecontroller.
 6. The vehicle tracking unit of claim 1, wherein the requestfor information from the remote device is a request for a specific pieceof information.
 7. The vehicle tracking unit of claim 1, wherein therequest for information from the remote device is a request for multiplepieces of information.
 8. The vehicle tracking unit of claim 1, whereinthe request for information from the remote device is a request for apiece of information that is calculated by the controller usinginformation retrieved from the database.
 9. The vehicle tracking unit ofclaim 1, wherein the controller is configured to determine locationusing the vehicle position determining device and to provide locationinformation to a remote device via the wireless communications device.10. A vehicle tracking device configured to communicate with at leastone vehicle device via a vehicle data bus, comprising: a wirelesscommunications device; and a controller configured to connect to thevehicle data bus; wherein the controller is configured to: query the atleast one vehicle device via the vehicle data bus and store theinformation provided by the at least one vehicle device in a database;and receive requests for information from a remote device via thewireless communications device, query the database for the requestedinformation and send the requested information to the remote device viathe wireless communications device.
 11. A method of obtaining data fromat least one vehicle device connected to a vehicle data bus, comprising:querying the at least one vehicle device using a vehicle trackingdevice; adding information received from the at least one vehicle devicein response to the query to a database maintained by the vehicletracking device; receiving a request for information from a remotedevice via the vehicle tracking device; querying the database using thevehicle tracking device to obtain the requested information; and sendingthe requested information to the remote device using the vehicletracking device.
 12. The method of claim 11, wherein the informationreceived from the at least one vehicle device includes at least onepiece of information selected from the group consisting of: VehicleSpeed; Engine Speed; Fuel Rate; Trip Fuel Consumption; Trip Odometer;Ignition Status; Malfunction Indicator Lamp Status; Diagnostic TroubleCodes; Power Take Off Status; Engine Coolant Monitor; Throttle Position;Battery Voltage; A/C System Monitor; Catalyst Monitor; ComprehensiveComponent Monitor; EGR System Monitor; Evaporative System Monitor; FuelSystem Monitor; Heated Catalyst Monitor; Misfire Monitor; Oxygen SensorMonitor; Oxygen Sensor Heater Monitor; Secondary Air Monitor; Fuel Rate;Trip Fuel Consumption; Battery Voltage; Brake Position/Switch Status;Odometer; Seatbelt Fastened; Cruise Control Status; Fuel Level;Transmission Gear; Turn Signal Status; Accelerator Position; TirePressure; Oil Life; Airbag Status; Acceleration/Deceleration; andVehicle Security Alarm Status.
 13. The method of claim 11, whereinquerying the at least one vehicle device using a vehicle tracking devicecomprises periodically querying the at least one vehicle device usingthe vehicle tracking device.
 14. The method of claim 11, whereinquerying the at least one vehicle device using the vehicle trackingdevice comprises determining at least one vehicle device to query basedupon a piece of information previously received by the controller. 15.The method of claim 11, wherein the request for information from theremote device is a request for a specific piece of information.
 16. Themethod of claim 11, wherein the request for information from the remotedevice is a request for multiple pieces of information.
 17. The methodof claim 11, wherein the request for information from the remote deviceis a request for a piece of information that is generated by analyzinginformation retrieved from the database using the vehicle trackingdevice.
 18. The method of claim 11, further comprising: determininglocation using the vehicle tracking device; and providing locationinformation to a remote device via the vehicle tracking device.
 19. Amachine readable medium containing controller instructions, whereexecution of the instructions by a controller causes the controller toperform a process comprising: querying the at least one vehicle device;adding information received from the at least one vehicle device inresponse to the query to a database; receiving a request for informationfrom a remote device via a wireless communications device; querying thedatabase to obtain the requested information; and sending the requestedinformation to the remote device via a wireless communications device.20. The machine readable medium of claim 19, wherein the machinereadable medium is non-volatile memory.